#include<stdio.h>
int count=0;
int n,k;
int A[20];
int is_prime(int sum);
int dfs(int start,int sum,int depth)
{
	if(depth==k){
		if(is_prime(sum)) count++;
		return 0;
	}
	for(int i=start;i<n;i++){
		dfs(i+1,sum+A[i],depth+1);
	}
}

int is_prime(int sum)
{
	int flag=1;
	for(int i=2;i<sum;i++){
		if(sum%i==0) return 0;
	}
	return 1;
}

int main()
{
	//int n;
	//int A[20];
	scanf("%d %d",&n,&k);
	for(int i=0;i<n;i++){
		scanf("%d",&A[i]);
	}
	dfs(0,0,0);
	printf("%d",count);
	return 0;
}
